<?php

require_once 'SessionController.php';
if(!verificaLogin())return;
if(!verificaTorneo())return;

require_once '../../../../Utils/Conexion.php';
require_once '../../../Utils/RefreshData.php';


//VARIABLES 
$torneo = $_SESSION["torneo"];
$accion = (isset($_POST["accion"]))? $_POST["accion"]:"LISTAR";
$valor = (isset($_POST["valor"]))? $_POST["valor"]:"";

//ACCIONES
if ($accion === "GUARDAR") {
    guardar($valor);
}

function getTorneoData(){
    global $torneo;
    $query = "SELECT * FROM poker_torneos WHERE id = ".$torneo['id']." AND finalizado IS FALSE LIMIT 1";
    $consulta = consultar($query);
    if($consulta) {
        $_SESSION['torneo'] = $consulta[0];
        $torneo = $_SESSION['torneo'];
    } else {
        unsetTorneo();
    }
}

function guardar($dato) {
    global $torneo;
    
    //ACTUALIZA TODOS LOS DATOS DEL TORNEO
    refreshTorneoData($torneo['id']);
    refreshComprasRealizadas($torneo['id']);
    getTorneoData();
    
    
    //VALIDACION
    if($torneo['habilitar_juego']==0 && $dato != "total") {
        die("ESTE TORNEO YA SE ENCUENTRA FINALIZADO PARCIALMENTE.");
    }
    if($torneo['total_compitiendo']>0 && $dato == "total") {
        die("TODAVIA EXISTEN ".$torneo['total_compitiendo']." PARTICIPANTES EN JUEGO.");
    }
    
    
    $forma = ($dato === "total")?"TOTAL":"PARCIAL";
    
    $query = "UPDATE poker_specifics SET estado = 'ESPERANDO' 
              WHERE estado = 'JUGANDO' AND poker_torneo_id = ".$torneo['id']."; ";
    
    if($dato === "total"){
        $query.= "UPDATE poker_torneos 
                  SET habilitar_juego = 0, habilitar_inscripciones = 0, finalizado = 1 
                  WHERE id = ".$torneo['id']." LIMIT 1; ";
        
        //ACTUALIZA LOS MONTOS FINALES.
        
        $query.= " INSERT INTO poker_movimientos (poker_torneo_id, usuario_id, tipo, descripcion, ingreso, egreso) 
                   VALUES (".$torneo['id'].", ".$_SESSION['usuario']['id'].", 'BOUNTY', 'PAGO TOTAL POR BOUNTYS REALIZADOS', 0,".$torneo['total_bounty']."); ";
        
        $query.= " INSERT INTO poker_movimientos (poker_torneo_id, usuario_id, tipo, descripcion, ingreso, egreso) 
                   VALUES (".$torneo['id'].", ".$_SESSION['usuario']['id'].", 'COMISION CASA', 'PAGO COMISION CASINO', 0,".$torneo['total_comision']."); ";
        
        $query.= "SELECT @premios:=SUM(monto) AS premios FROM poker_pay_out WHERE poker_torneo_id = ".$torneo['id']."; ";
                                  
        $query.= " INSERT INTO poker_movimientos (poker_torneo_id, usuario_id, tipo, descripcion, ingreso, egreso) 
                   VALUES (".$torneo['id'].", ".$_SESSION['usuario']['id'].", 'DIFERENCIAS', 'DIFERENCIAS POR REDONDEO EN PREMIOS', 0, ".$torneo['pozo_acumulado']." - @premios); ";
                                  
    } else {
        $query.= "UPDATE poker_torneos SET habilitar_juego = 0 WHERE id = ".$torneo['id']." LIMIT 1; ";
    }
    
    
    
    $query.= "INSERT INTO poker_movimientos (poker_torneo_id, usuario_id, tipo, descripcion) 
              VALUES (".$torneo['id'].", ".$_SESSION['usuario']['id'].", 
                      'TORNEO FINALIZADO', 'FINALIZACION $forma DEL TORNEO, EN NIVEL: ".$torneo['nivel_actual']."');";
    
    if(multiQuery($query)) {
        echo "<script type='text/javascript'> $('#finalizarJuego').modal('hide');</script>";
    } else {
        echo "ERROR: No se pudo Finalizar el Torneo!!";
    }
    
    
}